package com.rockwell.sniffyhunter.utils;

import com.rockwell.sniffyhunter.model.Picker;

public enum PickerState implements IStateMachine {
	START {
		@Override
		public
		IStateMachine doAction(IStateObject stateObject) {
			return ((Picker)stateObject).start();
		}
	},
	MOVE_TO_TREASURE {
		@Override
		public
		IStateMachine doAction(IStateObject stateObject) {
			return ((Picker)stateObject).MoveToTreasure();
		}
	},
	PICK {
		@Override
		public
		IStateMachine doAction(IStateObject stateObject) {
			return ((Picker)stateObject).Pick();
		}
	},
	MOVE_BACK_TO_SNIFF {
		@Override
		public
		IStateMachine doAction(IStateObject stateObject) {
			return ((Picker)stateObject).MoveBackToSniff();
		}
	},
	DONE{
		@Override
		public IStateMachine doAction(IStateObject stateObject) {
			return START;
		}
	};

}
